iT邦幫忙

2022 iThome 鐵人賽

DAY 20
0
DevOps

30天的社群機器人之旅系列 第 20

Day 20 MessageHandler

  • 分享至 

  • xImage
  •  

昨天講完了 Telegram Bot 的一些基本元件,接著我們就要來處理最基本的文字訊息了。

在 Telegram Bot 中,我們首先需要先寫一個處裡函式,前面我們寫了一個基本的回聲 Bot ,怕各位忘記我再放一次。

import os
import logging

from telegram import Update
from telegram.ext import Updater, Filters, CallbackContext
from telegram.ext import MessageHandler


logging.basicConfig(level=logging.DEBUG)


def message_handler(update: Update, context: CallbackContext):
    context.bot.send_message(chat_id=update.message.chat.id, text=update.message.text)


updater = Updater(os.environ["TOKEN"])
updater.dispatcher.add_handler(MessageHandler(filters=Filters.text, callback=message_handler))


if __name__ == "__main__":
    updater.start_polling()
    updater.idle()
    updater.stop()

上方的 message_handler 首先定義了我們要如何處裡傳入的文字訊息,而我們暫時只是簡單的將傳入的文字再回傳給使用者而已。

而我們在下方的 Dispatcher 加入了一個 MessageHandler,透過 Filters.text 篩選出文字訊息,並指定使用剛剛的 message_handler 處裡我們傳入的文字訊息。

最後我們就可以成功的實現一個回聲機器人了。

那麼就先到這邊,在通訊軟體中,文字訊息是最基本的,因此在最前面先講如何處理。

大家掰~掰~


上一篇
Day 19 Telegram Bot 訊息詳解
下一篇
Day 21 Image, Video, Audio & File
系列文
30天的社群機器人之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言